iT邦幫忙

2022 iThome 鐵人賽

DAY 9
1
Software Development

林姓商人與指令操作的秘密—談 Linux command line interface系列 第 9

Day09:魔法的限制——檔案權限:chgrp、chown

  • 分享至 

  • xImage
  •  

今天,我們來聊聊昨天沒有講完的檔案權限!

首先,我們注意到前面的符號。

根據 man 的說明,第一個符號的意義如下

The file mode printed under the -l option consists of the entry type and the permissions.  The entry type character describes the type of file, as
     follows:

           -     Regular file.
           b     Block special file.
           c     Character special file.
           d     Directory.
           l     Symbolic link.
           p     FIFO.
           s     Socket.
           w     Whiteout.

比較常見到的是區分資料夾(d)和一般的檔案(-),

像是昨天文章內的 .bash_history

-rw-------  1 ec2-user ec2-user  2146 Sep  5 14:46 .bash_history

就是一般檔案

.ssh

drwx------  2 ec2-user ec2-user    29 Apr 19  2021 .ssh

就是資料夾了。

接著後面的部分,就是討論檔案的權限了,我們一樣問問 man

The next three fields are three characters each: owner permissions, group permissions, and other permissions.

首先,我們先將權限分成三大類

前面三個,所代表的是這個檔案的擁有者所具有的權限。

緊接著的三個,所代表的是與檔案處於相同群組( group)的使用者,所擁有的權限。

最後三個,是其他使用者所使用的權限。

怪不得我們昨天還納悶,為什麼要寫兩次擁有者的名字。原來是因為剛好同時有兩個群組,也叫做 rootec2-user,所以導致看起來像是一樣的稱呼寫了兩次。

我們可以看到,有的檔案前面有 r 的字樣,那就是允許可以讀取的權限,w 的部分則是寫入的權限,x的部分則是執行的權限。

要更換檔案的群組,我們可以使用 chgrp 這個指令:

NAME
       chgrp - change group ownership

我們先用 sudo so 將自己切換為 root 身份

然後嘗試更改 .bash_history 的群組

chgrp root .bash_history
ls -al
-rw-------  1 ec2-user root      2355 Sep  8 02:33 .bash_history

可以看到,我們成功地將檔案的群組改成 root

如果要更改檔案的擁有者的話,我們可以用 chown 這個指令:

NAME
       chown - change file owner and group

嘗試更改 .bash_history 的擁有者看看

chown root .bash_history
ls -al
-rw-------  1 root     root      2355 Sep  8 02:33 .bash_history

好了!我們成功的修改了檔案的擁有者!

測試過後記得將檔案的權限改回 ec2-user

chgrp ec2-user .bash_history
chown ec2-user .bash_history

今天我們的分享先到這邊,各位明天見!


上一篇
Day 08:列出資料夾內檔案的 ls,還有能看穿隱身斗篷的秘密指令
下一篇
Day 10:讀取檔案的能力!cat、head、tail
系列文
林姓商人與指令操作的秘密—談 Linux command line interface30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言